説明
バグレポート
GestureRecogizer のクリーンアップ
まとめ
OneSequenceGestureRecognizer.addAllowedPointer()
を取るように変更されましたPointerDownEvent
、そのスーパークラスと同様です。以前は、より多くの値を受け入れていました
全般的PointerEvent
タイプが間違っていました。
コンテクスト
フレームワークは通過するだけですPointerDownEvent
にオブジェクトを付けるaddAllowedPointer()
。宣言するOneSequenceGestureRecognizer.addAllowedPointer()
より一般的なものを取る
タイプが紛らわしかったため、OneSequenceGestureRecognizer
サブクラスへ
引数を適切なクラスにキャストする必要があります。
変更内容の説明
前回の宣言は強制されましたOneSequenceGestureRecognizer
子孫への
オーバーライドaddAllowedPointer()
そのようです:
class CustomGestureRecognizer extends ScaleGestureRecognizer {
@override
void addAllowedPointer(PointerEvent event) {
// insert custom handling of event here...
super.addAllowedPointer(event);
}
}
新しいメソッド宣言により、このコードは次のように失敗します。 エラーメッセージ:
super.addAllowedPointer(event); The argument type 'PointerEvent' can't be assigned to the parameter type 'PointerDownEvent'.
#argument_type_not_assignable
移行ガイド
移行前のコード:
class CustomGestureRecognizer extends ScaleGestureRecognizer {
@override
void addAllowedPointer(PointerEvent event) {
// insert custom handling of event here...
super.addAllowedPointer(event);
}
}
移行後のコード:
class CustomGestureRecognizer extends ScaleGestureRecognizer {
@override
void addAllowedPointer(PointerDownEvent event) {
// insert custom handling of event here...
super.addAllowedPointer(event);
}
}
タイムライン
リリースされたバージョン: 2.3.0-13.0.pre
安定版リリース: 2.5
参考文献
API ドキュメント:
OneSequenceGestureRecognizer
関連する PR:
- addAllowedPointer() のオーバーライドを修正